const UserList = resolve =>
    require(['common/src/views/administrator/authority/UserList'], resolve);
const GroupList = resolve =>
    require(['common/src/views/administrator/authority/GroupList'], resolve);
const RoleList = resolve =>
    require(['common/src/views/administrator/authority/RoleList'], resolve);
const Authorities = resolve =>
    require(['common/src/views/administrator/authority/Authorities'], resolve);

const AuditLog = resolve =>
    require(['common/src/views/administrator/systemSettings/auditLog'], resolve);
const sqlLog = resolve =>
    require(['common/src/views/administrator/systemSettings/sqlLog'], resolve);
const monitor = resolve =>
    require(['common/src/views/administrator/systemSettings/monitor'], resolve);
const DataDictionary = resolve =>
    require(['common/src/views/administrator/systemSettings/DataDictionary'], resolve);
const WorkflowList = resolve =>
    require(['common/src/views/administrator/systemSettings/WorkflowList'], resolve);
const flowTypeMgt = resolve =>
    require(['common/src/views/administrator/systemSettings/flowTypeMgt'], resolve);
const CreateWorkflow = resolve =>
    require(['common/src/views/administrator/systemSettings/CreateWorkflow'], resolve);
const UpdateWorkflow = resolve =>
    require(['common/src/views/administrator/systemSettings/UpdateWorkflow'], resolve);
const CronService = resolve =>
    require(['common/src/views/administrator/systemSettings/CronService'], resolve);
const PublicExport = resolve =>
    require(['common/src/views/administrator/systemSettings/PublicExport'], resolve);
const Departments = resolve =>
    require(['common/src/views/administrator/authority/Departments'], resolve);
const Menus = resolve =>
    require(['common/src/views/administrator/authority/Menus'], resolve);
const Operational = resolve =>
    require(['common/src/views/administrator/authority/Operational'], resolve);
const SchoolCalendar = resolve =>
    require([
        'common/src/views/administrator/systemSettings/SchoolCalendarList'
    ], resolve);
const TimeScheduleList = resolve =>
    require(['common/src/views/administrator/systemSettings/TimeScheduleList'], resolve);
const HolidayList = resolve =>
    require(['common/src/views/administrator/systemSettings/HolidayList'], resolve);
const CommonParam = resolve =>
    require(['common/src/views/administrator/systemSettings/CommonParam'], resolve);
const SystemParam = resolve =>
    require(['common/src/views/administrator/systemSettings/SystemParam'], resolve);
const preArrangeLog = resolve =>
    require(['common/src/views/administrator/systemSettings/preArrangeLog'], resolve);
const cacheMange = resolve =>
    require(['common/src/views/administrator/systemSettings/cacheMange'], resolve);
const ShortcutConfigutation = resolve =>
    require(['common/src/views/administrator/systemSettings/ShortcutConfigutation'], resolve)
const layout = resolve => require(['common/src/views/layout'], resolve);

const SystemSettingMgr = {
    path: '/systemSettingMgr',
    name: 'systemSettingMgr',
    component: layout,
    children: [
        {
            path: '/userlist',
            name: 'userlist',
            component: UserList
        },
        {
            path: '/groupList',
            name: 'groupList',
            component: GroupList
        },
        {
            path: '/roleList',
            name: 'roleList',
            component: RoleList
        },
        {
            path: '/authorities',
            name: 'authorities',
            component: Authorities
        },
        {
            path: '/dataDictionary',
            name: 'dataDictionary',
            component: DataDictionary
        },
        {
            path: '/workflow',
            name: 'workflow',
            component: WorkflowList
        },
        {
            path: '/flowTypeMgt',
            name: 'flowTypeMgt',
            component: flowTypeMgt
        },
        {
            path: '/createworkflow',
            name: 'createWorkflow',
            component: CreateWorkflow,
            meta: {
                nokeepalive: true
            }
        },
        {
            path: '/updateworkflow/:templateId',
            name: 'updateWorkflow',
            component: UpdateWorkflow,
            meta: {
                nokeepalive: true
            }
        },
        {
            path: '/cronService',
            name: 'cronService',
            component: CronService
        },
        {
            path: '/departments',
            name: 'departments',
            component: Departments
        },
        {
            path: '/menus',
            name: 'menus',
            component: Menus
        },
        {
            path: '/operational',
            name: 'operational',
            component: Operational
        },
        {
            path: '/schoolCalendar',
            name: 'schoolCalendar',
            component: SchoolCalendar
        },
        {
            path: '/timeSchedule',
            name: 'timeSchedule',
            component: TimeScheduleList
        },
        {
            path: '/holidays',
            name: 'holidays',
            component: HolidayList
        },
        {
            path: '/auditLog',
            name: 'auditLog',
            component: AuditLog
        },
        {
            path: '/sqlLog',
            name: 'sqlLog',
            component: sqlLog,
             meta: {
                nokeepalive: true
            }
        },
        {
            path: '/monitor',
            name: 'monitor',
            component: monitor
        },
        {
            path: '/commonParam',
            name: 'commonParam',
            component: CommonParam
        },
        {
            path: '/systemParam',
            name: 'SystemParam',
            component: SystemParam
        },
        {
            path: '/preArrangeLog',
            name: 'preArrangeLog',
            component: preArrangeLog
        },
        {
            path: '/publicExport/:id?',
            name: 'publicExport',
            component: PublicExport
        },
        {
            path: '/cacheMange',
            name: 'cacheMange',
            component: cacheMange
        },
        {
            path: '/ShortcutConfigutation',
            name: 'ShortcutConfigutation',
            component: ShortcutConfigutation
        },
    ]
};

export default SystemSettingMgr;
